package org.zfes.snowier.cloud.zbss.widget.act.service;

import java.util.List;
import java.util.Map;
import java.util.Optional;
import org.zfes.snowier.core.data.DataSet;
import org.zfes.snowier.core.data.Record;
import org.zfes.snowier.cloud.zbss.widget.act.dto.ActSubjectQuesAnsweDto;
import org.zfes.snowier.cloud.zbss.widget.act.model.ActQuestion;
import org.zfes.snowier.cloud.zbss.widget.act.model.ActSubjectQuesAnswer;
public interface IActSubjectQuesAnswerService{

	 Optional<ActSubjectQuesAnswer> loadActSubjectProcessAnswerById(Long id);
	
	 void createActSubjectProcessAnswer(ActSubjectQuesAnswer actSubjectProcessAnswer);
	

	 void deleteActSubjectProcessAnswer(Long id);
	
	 DataSet loadActSubjectProcessAnswerDataSet(Map<String, Object> params);
	 

 	void setActSubjectProcessAnswerStatus(Long id, Byte status);

	Optional<Record> loadAnswerDistribution(Long subjectId, Long quesId);

	Optional<ActQuestion> loadOpenAnswer(Long id);

	Optional<ActSubjectQuesAnsweDto> loadActSubjectQuesAnsweDto(Long subjectQuesId);

	List<ActSubjectQuesAnswer> loadAnswerBySubjectQuesId(Long subjectQuesId);
}